<?php
/**
 * Created by PhpStorm.
 * User: w-pc
 * Date: 2017/03/07
 * Time: 10:34
 */

namespace Admin\Controller;
use Think\Controller;
class ImageController extends CommonController {
    public function index(){
        $image_list = D('Image')->get_ImageList();
        $this->assign('image_list',$image_list);
        $this->display();
    }
    public function show(){
        $i_id = request('get','int','i_id');
        if($i_id!=0){
            $image = D('Image')->get_ByImage($i_id);
            $this->assign('image',$image);
        }
        $this->display();
    }
    /**
     * 图片上传操作
     */
    public function upload(){
        $i_id = request('post','int','i_id');
        //全局变量
        $arrType=array('image/jpg','image/gif','image/png','image/bmp','image/jpeg');
        $max_size='500000';      // 最大文件限制（单位：byte）
        $upfile='./Public/file/images'; //图片目录路径
        $file=$_FILES['upfile'];
        if($_SERVER['REQUEST_METHOD']=='POST'){ //判断提交方式是否为POST
            if(!is_uploaded_file($file['tmp_name'])){ //判断上传文件是否存在
                echo "上传失败，文件不存在！,请稍等自动跳回";
                echo '<meta http-equiv="refresh" content="3;/admin.php?c=image&a=show&i_id=".$i_id>';  //自动跳转回index文件
                exit;
            }
            if($file['size']>$max_size){  //判断文件大小是否大于500000字节
                echo "上传失败，上传文件太大！,请稍等自动跳回";
                echo '<meta http-equiv="refresh" content="3;/admin.php?c=image&a=show&i_id=".$i_id>';  //自动跳转回index文件
                exit;
//                $this->assign('article','上传文件太大！');
//                $this->redirect('/admin.php?c=image&a=show&i_id='.$i_id);
//                exit;
            }
            if(!in_array($file['type'],$arrType)){  //判断图片文件的格式
                echo "上传失败，上传文件格式不对！,请稍等自动跳回";
                echo '<meta http-equiv="refresh" content="3;/admin.php?c=image&a=show&i_id=".$i_id>';  //自动跳转回index文件
                exit;
            }
            if(!file_exists($upfile)){  // 判断存放文件目录是否存在
                mkdir($upfile,0777,true);
            }
            $imageSize=getimagesize($file['tmp_name']);
            $img=$imageSize[0].'*'.$imageSize[1];
            //采用时间戳命名
            $fname=rand().time();
            $ftype=explode('.',$fname);
            $fileinfo=pathinfo($file['name']);
//                var_dump($fileinfo['extension']);
//                exit();
            $picName=$upfile."/rain".$fname.'.'.$fileinfo['extension'];
            if(file_exists($picName)){
                echo "上传失败，同文件名已存在！,请稍等自动跳回";
                echo '<meta http-equiv="refresh" content="3;/admin.php?c=image&a=show&i_id=".$i_id>';  //自动跳转回index文件
                exit;
            }
            if(!move_uploaded_file($file['tmp_name'],$picName)){
                echo "上传失败，移动文件出错！,请稍等自动跳回";
                echo '<meta http-equiv="refresh" content="3;/admin.php?c=image&a=show&i_id=".$i_id>';  //自动跳转回index文件
                exit;
            }else{
//                echo $picName."<br>";
//                echo "<font color='#FF0000'>图片文件上传成功！</font><br/>";
//                echo "<font color='#0000FF'>图片大小：$img</font><br/>";
//                echo "图片预览：<br><div style='border:#F00 1px solid; width:200px;height:200px'>
//                    <img src=\"".$picName."\" width=200px height=200px>".$fname."</div>";
                if($i_id!=0){
                    $i_title = request('post','char','i_title');
                    $i_date = request('post','char','i_date');
                    $i_content = request('post','char','i_content');
                    $arr['i_title'] = $i_title;
                    $arr['i_date'] = $i_date;
                    $arr['i_content'] = $i_content;
                    $arr['i_href'] = $picName;
                    D('Image')->set_UpdateImage($i_id,$arr);
                    $this->assign('article','图片文件上传成功！');
                    $this->redirect('/admin.php?c=image&a=show&i_id='.$i_id);
                    exit();
                }else{
                    $i_title = request('post','char','i_title');
                    $i_date = request('post','char','i_date');
                    $i_content = request('post','char','i_content');
                    $arr['i_title'] = $i_title;
                    $arr['i_date'] = $i_date;
                    $arr['i_content'] = $i_content;
                    $arr['i_href'] = $picName;
//                    var_dump($arr);
//                    exit();
                    $i_id = D('Image')->set_InsertImage($arr);
                    $this->redirect('/admin.php?c=image&a=show&i_id='.$i_id);
                    exit();
                }
            }
        }
    }
}